package exception;
//本类是用来测试try...catch..的演示demo

/**
 * try...catch..执行流程
 * 1.当程序执行到try中的代码时，如果代码执行过程中出现了异常，那么try中的代码就会停止执行，
 *   会被抛出一个异常对象，并且会在底层记录该异常对象。
 * 2.当java运行时系统接收到了此异常时，会让catch得里的异常进行对比，
 *   如果异常对象是catch中定义的异常类型，那么就会执行catch中的代码。
 * 3.执行完毕之后 程序还会执行try..catch代码之后的内容。
 */
public class TryCatchDemo {
    public static void main(String[] args) {
        System.out.println("程序开始执行了");
        try{
            String str = "null";
            String str1 = "abc";
            System.out.println(str.length());
            System.out.println(str1.charAt(2));
        }catch (NullPointerException e) {
            System.out.println("空指针异常");
        }catch (StringIndexOutOfBoundsException e){
            System.out.println("出现了字符串索引越界异常");
        }
        System.out.println("程序结束");

    }
}
